第三章. Hello Quartz (第四部分)
4. 打包 Quartz 应用程序

让我们最后简单讨论打包一个用到了 Quarts 框架的应用程序的流程,也以此来结束本章的内容。

·Quartz 第三方依赖包

从 1.5 版的发行包开始,你会看到一个 <QUARTZ_HOME>\lib 目录,在这个目录,你会发现几个子目录:

    ·<QUARTZ_HOME>\lib\core

    ·<QUARTZ_HOME>\lib\optional

    ·<QUARTZ_HOME>\lib\build


作为开发呢,你绝对是需求 Quartz JAR 包,也需要其他一些依赖包。需要哪些第三方包还依赖于你是运行在独立环境中还是作为一个 J2EE 发行包的一部份。典型的,jakarta Commons 库 (commons-loggin, commons-beanutils,还有其他的) 总是要用到。然而,当你是部署到一个应用服务器环境中,你需要确保不能把那些在应用服务器上已存在的包拷过去;如果你这样做的,你可能回得到非常奇怪的结果。

表 3.1 列出了第三方包的信息,帮助你确定是否需要在应用中包含它们

表 3.1. Quartz  第三方包,必须/可选
名称必须/备注网址
activation.jar主要是 JavaMail 要用到http://java.sun.com/products/javabeans/glasgow/jaf.html
commons-beanutils.jarhttp://jakarta.apache.org/commons/beanutils
commons-collections.jarhttp://jakarta.apache.org/commons/collections
commons-dbcp-1.1.jar是,假如用到数据库作为作业存储http://jakarta.apache.org/commons/dbcp
commons-digester.jar假如你使用了某些插件,就需要它
commons-logging.jarhttp://jakarta.apache.org/commons/logging/
commons-pool-1.1.jarhttp://jakarta.apache.org/commons/pool/
javamail.jar发送 e-mail 用http://java.sun.com/products/javamail/
jdbc2_0-stdext.jar是,假如用到数据库作为作业存储http://java.sun.com/products/jdbc/
jta.jar是,假如用到数据库作为作业存储http://java.sun.com/products/jta/database
quartz.jarQuart 框架核心包
servlet.jar假如使用了Servlet 容器,但容器中应该存在http://java.sun.com/products/servlet/
log4j.jar来吧,谁没用过它呢?http://logging.apache.org/


·配置和属性文件

你还必须在你的应用中包含 quartz.properties。假如你是以散装(exploded format) 形式部署应用,你应该把 quartz.properties 文件放置在类加载器能够加载的目录中。(所谓的 “exploed” 形式指不打成一个 JAR、WAR、EAR 或者其他 Java 包,以独立文件存在于文件系统中) 例如,如果你有一个 classes 目录(比如一个 Web 应用的 WEB-INF/classes 目录),就可以把 quartz.properties 文件放在那儿。假如你以 Java 打包形式部署,应该放属性文件放在包的根下。在对待 quartz_job.xml 文件时也使用同样的规则。

[译者注]
OK,至此,第三章的内容即告完成,接下来将会跳到对第六章的翻译。